Software applications may be designed to support a variety of devices and device features. When a software developer modifies software code for one or more applications which may be used by one or more devices, the developer may not be able to easily anticipate the effects that the modification may have on other software applications and devices which may execute those software applications. For example, a change to one software program may effect multiple related software programs used by multiple devices. Therefore, it may be difficult to determine and test the effects that software changes may have on software programs and devices.
Certain implementations will now be described more fully below with reference to the accompanying drawings, in which various implementations and/or aspects are shown. However, various aspects may be implemented in many different forms and should not be construed as limited to the implementations set forth herein; rather, these implementations are provided so that this disclosure will be thorough and complete, and will fully convey the scope of the disclosure to those skilled in the art. Like numbers in the figures refer to like elements throughout. Hence, if a feature is used across several drawings, the number used to identify the feature in the drawing where the feature first appeared will be used in later drawings.